One method of implementing magnetic tape devices to maximize capacity is to maximize the number of parallel tracks on the tape. The typical way of maximizing the number of tracks is to employ servo systems which provide track following and allow the tracks to be spaced very closely. Even so called "low end" tape devices are now employing track following to maximize the number of tracks.
An example of track following servoing is the provision of groups of prerecorded parallel longitudinal servo tracks that lie between groups of longitudinal data tracks, so that one or more servo heads may read the servo information and an accompanying track following servo will adjust the lateral position of the head or of the tape to maintain the servo heads centered over the corresponding servo tracks. The servo heads are spaced a defined distance from the data heads, so that centering the servo heads results in the data heads being centered over the data tracks. The defined distance is maintained for all tape drives in a particular family allowing exchange of tape media between tape drives in the same or compatible families.
An example of a track following servo system particularly adapted to magnetic tape comprises that of the incorporated '384 patent. The servo patterns are comprised of magnetic flux transitions recorded in continuous lengths at non-parallel angles, such that the timing of the intervals between servo transitions read from the servo pattern at any point on the pattern varies continuously as the head is moved across the width of the servo pattern. For example, the pattern may comprise sloped or slanted transitions with respect to the length of the track alternating with oppositely sloped or slanted transitions, each comprising a pair of transitions. Thus, the relative timing of the intervals between transitions read by a servo read head varies linearly depending on the lateral position of the head. Speed invariance is provided by utilizing a group of interlaced pairs of transitions, arranged in two bursts in a group, and determining the ratio of two timing intervals, the interval between two like transitions compared to the interval between two dissimilar transitions. Synchronization of the decoder to the servo pattern may be accomplished by having two separate groups of bursts of pairs of transitions, each group having a different number of pairs of transitions in the bursts. Thus, the position in the set of groups is readily determined by knowing the number of pairs of transitions in the present group.
Timing of the intervals between transitions requires identification of the separate bursts in each of the groups. Each of the bursts is separated by a gap which is employed to identify the end of one burst and the beginning of the next. The gaps are determined by comparing the interval between sequential transitions against a gap detection threshold. If the interval is less than the threshold, the transitions are assumed to be within a burst, and if the interval is equal to or greater than the threshold, a gap between bursts is assumed.
Tape speeds are subject to significant variation. The tape speed and rate of data transfer often are different, or the data transfer is intermittent due to other operations of the host computer system, resulting in the need to stop and subsequently restart the motion of the tape. Further, the tape drive operates in different modes, some of which require that the tape media be speeded up or slowed significantly. When the tape is moving slowly, the transitions appear to be far apart, such that the interval between adjacent transitions within a burst may have a timing which exceeds the threshold and thus appears to be a gap between bursts. Thus, the servo gap identification may easily be lost, which, in turn, loses the servo tracking capability of the tape drive.
Certain high capacity and high speed tape drives are equipped with an incremental encoder, or tachometer, which provides a precise positioning signal to counters which monitor media position and which may be used with appropriate microcode in the tape control unit to determine the instant speed of the tape media and calculate a new threshold and identify the servo gaps.
Cost reduction is of key importance in modern tape drives and other longitudinal media drives. Precision incremental encoders are expensive and it is desirable to provide an alternative, which may allow the elimination of the incremental encoder.
Ideally, the servo gap detection threshold is updated during the tape speed variation, or at least as soon as possible after the tape speed is varied. Conventionally, the tape speed and the servo gap detection threshold are calculated by the microcode at a tape transport timer interrupt, and the threshold is set as a register value if needed. The calculation and update of the servo gap detection threshold are a microcode overhead. Further, the control unit processor performs a number of interrupt driven operations, and may be unable to service the servo gap interrupt and then calculate the servo gap detection threshold at every tape transport timer interrupt. Moreover, if an abnormality occurs in the servo system, and the tape speed had been stable, the microcode may not monitor and update the threshold and identify the gaps even though the tape speed is still available. As the result, the previously set gap threshold may no longer be correct as the tape speed is varied, such that not all the servo gaps are sensed or intervals between adjacent transitions in a burst are erroneously sensed as servo gaps.
A simplistic solution is to wait for the tape velocity to fully stabilize at the new nominal value and use a fixed servo gap detection threshold. This approach would overly limit the operating range of the tape servo system and markedly degrade the data handling ready time for the tape drive.